#ifndef LEVEL2_H_INCLUDED
#define LEVEL2_H_INCLUDED

#include "level1.h"
#include "cat.h"
#include "keith.h"

class Level2 : public Levels
{
    private:
        MyText *txtOut;

        int high_score,
            max_right_movement,
            max_left_movement,
            movingblock,
            a_hit;

        Keith player;

        // TESTING MY BLOCK CLASS
        Block *grass0,
              *small_grass0,
              *first_towers,
              *second_towers;

        // More test
        int player_current_y, // where the player is in terms of Y
            jump_max, // max number of pixels the player can jump
            jump_spd, // speed of player jump
            player_current_floor_y,
            cloudspeed,
            volcano_frame,
            volcano_speed,
            scrolling; // if the player is on a block of platfourm this is the base Y for the player

        bool landed,
             movingright;

        string topblocks,
               midblocks,
               groundblocks,
               top1blocks;

        MyGrafx clouds1,
                clouds2,
                background,
                volcano,
                ground;

        Cat kitty;

    private:
        void load();
        void print_level_images( int bgY, int bgX1, int bgX2, int bgX3);
        void calc_screen_movement();
        void detect_bullet_firing();
        void Check_player_jumping();

    public:
        Level2(int health, int score);
        ~Level2();
        void draw();
        void draw_ground_objects();
        void moveleft();
        void moveright();
        void moveup();
        void attack();
        void drawclouds();
        void drawvolcanos();

        void Set_player_main_floor_y( int main_floor_y );
        void Reset_jump_spd();
        //int getPlayerHealth();

};


#endif // Level2_H_INCLUDED
